package com.chenjj.scala.hfunc

/**
  * 1.函数作为参数
  * 2.函数作为返回值
  */
object FuncParamAndReturn {
  //匿名函数
  val sayHello=(name:String)=>{println("hello:" + name)}

  //定义一个方法，接收一个函数和一个变量，函数的参数必须要是String类型，变量是String类型
  def greeting(func:(String) => Unit,name :String)={
    func(name)
  }

  //将函数作为返回值
  def getGreetingFunc(message:String)={
    (name:String) => println(message + ":" + name)
  }

  def main(args: Array[String]): Unit = {

    greeting(sayHello,"chenjj")


    val greetingFunc = getGreetingFunc("good night")
    greetingFunc("chenjj")
  }

}
